package com.ruoyi.leaveManage.domain;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.util.Date;
import java.math.BigDecimal;
import com.ruoyi.common.annotation.Excel;

/**
 * 请假信息对象 leave_manage
 *
 * @author ruoyi
 * @date 2021-04-26
 */
@Data
@NoArgsConstructor
@Accessors(chain = true)
@TableName("leave_manage")
public class LeaveManage implements Serializable {

private static final long serialVersionUID=1L;


    /** 请假ID主键 */
    @TableId(value = "leave_id")
    private Long leaveId;

    /** 用户ID */
    private Long userId;

    /** 请假类型  0事假 1病假 2实习 3其他 */
    private Long type;

    /** 健康状况 */
    private String healthCondition;

    /** 去往地 */
    private String destination;

    /** 上传资料照片 */
    private String image;

    /** 本人联系方式 */
    private String selfPhone;

    /** 时长 */
    private Long hour;

    /** 紧急联系方式 */
    private String backupPhone;

    /** 导员审批状态 0待审核1已通过2已驳回 */
    private Long approveStatusGuide;

    /** 导员审批人 */
    private String approveByGuide;

    /** 领导审批状态 0待审核1已通过2已驳回 */
    private Long approveStatusLeading;

    /** 领导审批人 */
    private String approveByLeading;
    /** 驳回理由 */
    private String rejectReason;
    /** 撤销 */
    private Integer leaveRevoke;

    /** 创建时间 */
    @TableField(fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /** 是否删除 0否1是 */
    @TableField(select = false)
    @TableLogic
    private Long isDelete;

}
